//import java.util.ArrayList;
//import java.util.HashMap;
//import java.util.PriorityQueue;
//
///**
// * Created by zhangjinrui on 17/6/27.
// */
//
//public class Solution207 {
//
//    public static void main(String args[]) {
//        Solution207 s = new Solution207();
//        System.out.println(s.canFinish(3, new int[][]{{1, 0}, {2, 1}}));
//    }
//
//    class Point implements Comparable<Point> {
//        int v;
//        ArrayList<Integer> to;
//        int in;
//
//        public Point(int v) {
//            this.v = v;
//            to = new ArrayList<>();
//            in = 0;
//        }
//
//        @Override
//        public int compareTo(Point o) {
//            return this.in - o.in;
//        }
//    }
//
//    public boolean canFinish(int numCourses, int[][] prerequisites) {
//        HashMap<Integer, Point> mp = new HashMap<>();
//        for (int i = 0; i < prerequisites.length; i++) {
//            int from = prerequisites[i][0];
//            int to = prerequisites[i][1];
//            if (!mp.containsKey(from)) {
//                mp.put(from, new Point(from));
//            }
//            if (!mp.containsKey(to)) {
//                mp.put(to, new Point(to));
//            }
//            mp.get(from).to.add(prerequisites[i][1]);
//            mp.get(to).in++;
//        }
//
//        int cnt = 0;
//        while (cnt < numCourses) {
//            Point
//        }
//        return true;
//    }
//
//}
